Docker ব্যবহার করে একটি সিম্পল ওয়েব অ্যাপ্লিকেশন তৈরি করার প্রক্রিয়া নিচে আলোচনা করা হলো। এই উদাহরণে, আমরা একটি সহজ Flask (Python)-ভিত্তিক ওয়েব অ্যাপ্লিকেশন তৈরি করব এবং এটি Docker কন্টেইনারে চালাব।
প্রথমে নিশ্চিত করুন যে আপনার সিস্টেমে Docker ইনস্টল করা আছে। Docker ইনস্টল করতে হলে, অফিসিয়াল Docker ডকুমেন্টেশন অনুসরণ করুন।
প্রথমে একটি নতুন ডিরেক্টরি তৈরি করুন এবং সেখানে যান:
mkdir my-flask-app
cd my-flask-app
একটি ফাইল তৈরি করুন app.py
নামে এবং নিচের কোডটি লিখুন:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def home():
return "Hello, Docker World!"
if __name__ == '__main__':
app.run(host='0.0.0.0', port=5000)
requirements.txt
ফাইল তৈরি করাএখন requirements.txt
নামের একটি ফাইল তৈরি করুন এবং এতে নিচের লাইনটি যোগ করুন:
Flask==2.1.1
Dockerfile
নামে একটি নতুন ফাইল তৈরি করুন এবং নিচের কনটেন্টটি যোগ করুন:
# বেস ইমেজ হিসাবে Python ব্যবহার করুন
FROM python:3.9-slim
# কাজের ডিরেক্টরি সেট করুন
WORKDIR /app
# requirements.txt ফাইল কপি করুন এবং নির্ভরতাগুলি ইনস্টল করুন
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
# অ্যাপ্লিকেশন কোড কপি করুন
COPY app.py .
# অ্যাপ্লিকেশন চালানোর জন্য কমান্ড নির্ধারণ করুন
CMD ["python", "app.py"]
Dockerfile থেকে একটি Docker Image তৈরি করতে নিচের কমান্ডটি ব্যবহার করুন:
docker build -t my-flask-app .
Docker Image তৈরি করার পর, একটি কন্টেইনার চালানোর জন্য নিচের কমান্ডটি ব্যবহার করুন:
docker run -d -p 5000:5000 my-flask-app
-d
অপশনটি কন্টেইনারটিকে ব্যাকগ্রাউন্ডে চালানোর জন্য এবং -p 5000:5000
হোস্টের 5000 পোর্টকে কন্টেইনারের 5000 পোর্টের সাথে ম্যাপ করতে ব্যবহৃত হয়।অবশেষে, আপনার ব্রাউজারে http://localhost:5000
তে যান। আপনি "Hello, Docker World!" বার্তাটি দেখতে পাবেন।
অ্যাপ্লিকেশনটি পরীক্ষা করার পর, কন্টেইনারটি থামানোর জন্য নিচের কমান্ডটি ব্যবহার করুন:
docker ps # চলমান কন্টেইনারের তালিকা দেখতে
docker stop # কন্টেইনার থামানোর জন্য
এই প্রক্রিয়ায়, আপনি Docker ব্যবহার করে একটি সিম্পল Flask ভিত্তিক ওয়েব অ্যাপ্লিকেশন তৈরি করেছেন। Dockerfile ব্যবহার করে ইমেজ তৈরি এবং কন্টেইনার চালানো হয়েছে, যা একটি ডেভেলপমেন্ট পরিবেশ তৈরি করতে সহায়ক। Docker এর মাধ্যমে আপনার অ্যাপ্লিকেশনটি পোর্টেবল এবং পুনঃব্যবহারযোগ্য হয়ে ওঠে।